package com.woniu.service;

import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.service.IService;
import com.woniu.entity.Fireworks;
import com.woniu.form.SendWishForm;
import com.woniu.form.SetOffFireworksForm;
import com.woniu.utils.RedisUtil;
import com.woniu.utils.TokenUtil;
import com.woniu.vo.*;
import org.springframework.beans.factory.annotation.Autowired;

import java.util.List;

/**
 * @Description:
 * @Author: woniu
 * @date: 2023/12/21 14:00
 */
public interface FireworksService extends IService<Fireworks> {

    /**
     * 记录观看视频次数
     * @return
     */
    boolean recordWatchVideoNum();

    /**
     * 查询观看视频次数
     * @return
     */
    String findWatchVideoNum();

    /**
     * 燃放烟花
     * @param form x,y坐标,烟花类型ID
     * @return
     */
    SetOffFireworksVO setOffFireworks(SetOffFireworksForm form);

    /**
     * 随机烟花
     * @return
     */
    List<FireworksConfigVO> randomFireworks(Integer num);

    /**
     * 随机一个愿望
     * @return
     */
    WishConfigVO randomWish();

    /**
     * 发射愿望
     * @param form 烟花ID，愿望ID
     * @return
     */
    boolean sendWish(SendWishForm form);

    /**
     * 燃放概况
     * @return
     */
    Long setOffGeneral();

    /**
     * 随机获取一条祝福信息
     * @return
     */
    BlessingConfigVO randomBlessing();

    /**
     * 随机100个用户的愿望
     * @return
     */
    List<UserWishVO> randomUserWish();

    /**
     * 获取用户分享二维码
     * @return
     */
    String shareQrcode();

    /**
     * 随机50个用户的愿望和50个3天内最大金额排序的红包
     * @return
     */
    UserWishAndRedPacketVO randomUserWishAndRedPacket();
}
